package com.nit.bike.service.basic;

import com.nit.bike.dto.basic.BikeDTO;
import com.nit.bike.dto.basic.UserDTO;
import com.nit.bike.dto.utils.TableReqDTO;
import com.nit.bike.dto.utils.TableRspDTO;

public interface BikeService {

    /**
     * 获取表格数据
     */
    TableRspDTO list4Table(TableReqDTO req) throws Exception;

    /**
     * 根据站点获取表格数据
     */
    TableRspDTO listByStation(TableReqDTO req) throws Exception;

    /**
     * 通过id获取记录
     */
    BikeDTO query(Long bikeId) throws Exception;

    /**
     * 新增记录
     */
    Integer add(BikeDTO bikeDTO) throws Exception;

    /**
     * 更新记录
     */
    Integer update(BikeDTO bikeDTO) throws Exception;

    /**
     * 删除记录
     */
    Integer remove(String ids) throws Exception;

    /**
     * 更新状态
     */
    Integer updateState(String ids, Integer state) throws Exception;

    /**
     * 修改当前骑行记录
     */
    void updateRideInfo(Long bikeId, Long rideId, Long stationId, Integer bikeState) throws Exception;
}
